# 数据来源：https://www.kaggle.com/starbucks/store-locations/data
# 现在我们有一组关于全球星巴克店铺的统计数据，如果我想知道
# 美国的星巴克数量和中国的哪个多，
# 或者我想知道中国每个省份星巴克的数量的情况，那么应该怎么办？

# 思路：遍历一遍，每次加1 ？？？

# 根据老师的来重写一遍

import pandas as pd
from matplotlib import pyplot as plt

file_path = './starbucks_store_worldwide.csv'
df = pd.read_csv(file_path)

'''
# 对country进行分组
grouped = df.groupby(by='Country')
print(type(grouped))
print(grouped)
# grouped 是一个DataFrameGroupBy对象
print(dir(grouped))

# for i in grouped:
#     print(i)
#     print('*'*100)
    # break
# 只需要对分组后的brand或者country进行统计就可以
# country_count = grouped['Country'].count()
country_count = grouped.Country.count()
print(country_count['US'])
print(country_count['CN'])
'''

'''
# 统计中国每个省店铺的数量
# bool索引
china_data = df[df['Country']=='CN']  #返回dataframe类型
grouped = china_data.groupby(by='State/Province').count()
print(type(grouped))  # 经过count（）变成了dataFrame，真好
# 因为只需要一列数字，用Brand这列
grouped = grouped['Brand'] # dataFrame进行操作
print(grouped)
print(type(grouped))  # series类型
'''


'''
# [] 这种方式选取的dataframe，groupby后返回的是series类型
grouped = df['Brand'].groupby(by=[df['Country'],df['State/Province']]).count()
print(type(grouped)) # series类型
print(grouped.head()) # 有两个索引
'''


'''
# [[]] 这种方式选取的dataframe，groupby后返回的是dataframe类型
grouped1 = df[["Brand"]].groupby(by=[df["Country"],df["State/Province"]]).count()
grouped2= df.groupby(by=[df["Country"],df["State/Province"]])[["Brand"]].count()
grouped3 = df.groupby(by=[df["Country"],df["State/Province"]]).count()[["Brand"]]


print(grouped1,type(grouped1))
print("*"*100)
print(grouped2,type(grouped2))
print("*"*100)
print(grouped3,type(grouped3))
'''











